package com.cx.common.utils;

import org.apache.commons.lang.math.RandomUtils;

import java.util.Random;

/**
 * @Author:cxy
 * @Date:2019/10/24 15:11
 * 
 */
public class RandomUtil extends RandomUtils {

	/** 随机数对象 */
	private static final Random RANDOM = new Random((41 * 0x5DEECE66DL + 0xBL) << 5);

	/**
	 * 取得随机数
	 * 
	 * @param maxValue
	 *            随机的最大值
	 * @return 随机的值
	 */
	public static int getRandomInteger(int maxValue) {
		int value = 0;
		if (maxValue > 0) {
			// value = RandomUtil.nextInt(maxValue);
			value = RANDOM.nextInt(maxValue);
		}
		return value;
	}
	
	public static Integer getRandomIntegerNot0(int maxValue) {
		int value = 0;
		if (maxValue > 0) {
			// value = RandomUtil.nextInt(maxValue);
			value = RANDOM.nextInt(maxValue) + 1;
		}
		return value;
	}

	/**
	 * 
	 * @param minValue
	 * @param maxValue
	 * @return
	 */
	public static int getRandBetween(int minValue, int maxValue) {
		return minValue + getRandomInteger(maxValue - minValue + 1);
	}

	/**
	 * 取得随机浮点数
	 * 
	 * @return
	 */
	public static float getRandomFloat() {
		return RANDOM.nextFloat();
	}
}
